Skip to content

变量

声明与赋值

变量就是会变化的量,在计算机中,当你创建一个变量时,会占据内存中相应的一些空间。

根据变量的数据类型,解释器分配内存并决定可以在内存中存储什么。因此,通过为变量分配不同的数据类型,您可以在这些变量中存储整数、小数或字符。

我们可以把变量理解为一个盒子,变量名就是给盒子贴上的标签,变量值就是装进盒子里的内容。

变量盒子

变量赋值

Python 变量不需要显式声明来保留内存空间。当您为变量赋值时,声明会自动发生。等号 = 用于为变量赋值。

= 运算符左侧的操作数是变量的名称,= 运算符右侧的操作数是存储在变量中的值。

myInt = 4 就意味着将 4 这个值赋予给了名为 myInt 的变量。

python
myInt = 4
myReal = 2.5
myChar = 'a'
myString = 'hello'
print(myInt)
print(myReal)
print(myChar)
print(myString)

上述代码中,myInt、myReal、myChar 和 myString 就是变量名,而 4/2.5、'a' 和 'hello' 则是变量值。

变量也可以相互引用和操作,运行下面的代码试试:

python
a = 1
b = 1
a = b + b
print(a)
print(b)

注意=等号

程序里的 = 不同于数学里的 =

python
a = 1
b = 1
a = b + b

这段代码第三行,是将 b + b 的值,赋予给了 a。

不是说 a 和 b + b 是相等的!

变量

py
a = 3
b = 3
a = b + b

请问程序执行完之后,a的值是? b的值是

[0/1]
赋值

Python代码执行错误判断

以下 Python 代码执行时将报错。

a=123
a='ABC'
[0/1]
变量
数据类型
错误处理

常量

在其它编程语言里,一般会有常量,也就是永远不变的量。但是在 Python 中,没有常量的概念。所以我们一般使用和变量一样的声明方式来声明常量,但是会习惯把所有字母大写,如:

python
PI = 3.1415926

命名规则

变量的命名是有规则的,我们不能随心所欲地去命名变量。

大部分编程语言的命名规则都是类似的,主要有以下 3 点要求:

  • 第一个字符必须是字母表中字母(a-z或者A-Z)或下划线 _
  • 变量名其他部分由字母、数字和下划线组成,不能有空格和其它字符。
  • 不能使用系统的保留关键字(如 if、else 等)

标识符命名规则

变量的命名规则与 Python 所有标识符(变量名,函数名,类名)的命名规则一致。

变量名对大小写敏感,如appleApple是两个不同的变量。

系统保留字

  • 以下这些都是 Python 的系统保留字,不能作为变量名。

  • ['False', 'None', 'True', 'and', 'as', 'assert', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'nonlocal', 'not', 'or', 'pass', 'raise', 'return', 'try', 'while', 'with', 'yield']

变量命名

请问以下变量命名合法的是?

[0/2]

Python变量命名规则题目1

以下选项中,符合 Python 语言变量命名规则的是( )。

[0/1]
变量
命名规则

Python变量命名规则题目2

以下 Python 不可以作为变量的名称的是 ( )。

[0/1]
变量
命名规则

Python变量命名规则题目3

以下选项中,不符合 Python 语言变量命名规则的是( )。

[0/1]
变量
命名规则
关键字

Python变量命名

在 Python 代码中,可以将变量命名为 print。

[0/1]
变量
命名规范

Python关键字判断

以下不是 Python 关键字的是

[0/1]
关键字

批量赋值

Python 的语法中,有一些批量赋值的语法,如:

python
a = b = c = 1
print(a)
print(b)
print(c)
a, b, c = 2, 2.0, 'Frank'
print(a)
print(b)
print(c)

运行代码,可以看到 a,b 和 c 的值的变化。

批量赋值

py
a,b = 1,2
c = d = a + b
e = c + d

请问程序执行完之后,e的值是?

[0/1]